/*
 *   Copyright Spectra, Inc. All Rights Reserved.
 */
package spectra.ee.web.node.model;

import java.util.ArrayList;
import java.util.List;

/**
 * 노드(t_node) 테이블 모델 클래스.
 *
 * @author kmhan
 */
public class Node
{
    /** 노드ID. */
    private String nodeId;

    /** 부모ID. */
    private String parentId;

    /** 노드명. */
    private String nodeName;

    /** 별칭. */
    private String alias;

    /** 노드타입. */
    private String nodeType;

    /** 깊이. */
    private int depth;

    /** 정렬순서. */
    private int sortOrder;

    /** 설명. */
    private String description;

    /** 도메인ID. */
    private String domainId;

    /** 삭제여부. (Y: 삭제, N: 미삭제) */
    private String deleteFlag = "N";

    /** 웹표시여부.(Y : 웹에서 보이기,N : 웹에서 숨기기) */
    private String webviewFlag = "N";

    /** 등록자ID. */
    private String createdBy;

    /** 등록일자. */
    private String createdDate;

    /** 수정자ID. */
    private String updatedBy;

    /** 수정일자. */
    private String updatedDate;
    
    /** 서비스타입. */
    private String serviceType;;
    
    /** 레벨 */
    private int level;
    
    /** 하위 노드 리스트 */
    private List childNode = new ArrayList();

    /**
     * 생성자.
     */
    public Node()
    {
    }

    /**
     * 노드ID getter.
     *
     * @return 노드ID.
     */
    public String getNodeId()
    {
        return this.nodeId;
    }

    /**
     * 노드ID setter.
     *
     * @param nodeId 노드ID.
     */
    public void setNodeId(String nodeId)
    {
        this.nodeId = nodeId;
    }

    /**
     * 부모ID getter.
     *
     * @return 부모ID.
     */
    public String getParentId()
    {
        return this.parentId;
    }

    /**
     * 부모ID setter.
     *
     * @param parentId 부모ID.
     */
    public void setParentId(String parentId)
    {
        this.parentId = parentId;
    }

    /**
     * 노드명 getter.
     *
     * @return 노드명.
     */
    public String getNodeName()
    {
        return this.nodeName;
    }

    /**
     * 노드명 setter.
     *
     * @param nodeName 노드명
     */
    public void setNodeName(String nodeName)
    {
        this.nodeName = nodeName;
    }

    /**
     * 별칭 getter.
     *
     * @return 별칭.
     */
    public String getAlias()
    {
        return this.alias;
    }

    /**
     * 별칭 setter.
     *
     * @param alias 별칭
     */
    public void setAlias(String alias)
    {
        this.alias = alias;
    }

    /**
     * 노드타입 getter.
     *
     * @return 노드타입.
     */
    public String getNodeType()
    {
        return this.nodeType;
    }

    /**
     * 노드타입 setter.
     *
     * @param nodeType 노드타입
     */
    public void setNodeType(String nodeType)
    {
        this.nodeType = nodeType;
    }

    /**
     * 깊이 getter.
     *
     * @return 깊이.
     */
    public int getDepth()
    {
        return this.depth;
    }

    /**
     * 깊이 setter.
     *
     * @param depth 깊이.
     */
    public void setDepth(int depth)
    {
        this.depth = depth;
    }

    /**
     * 정렬순서 getter.
     *
     * @return 정렬순서.
     */
    public int getSortOrder()
    {
        return this.sortOrder;
    }

    /**
     * 정렬순서 setter.
     *
     * @param sortOrder 정렬순서.
     */
    public void setSortOrder(int sortOrder)
    {
        this.sortOrder = sortOrder;
    }

    /**
     * 설명 getter.
     *
     * @return 설명.
     */
    public String getDescription()
    {
        return this.description;
    }

    /**
     * 설명 setter.
     *
     * @param description 설명.
     */
    public void setDescription(String description)
    {
        this.description = description;
    }

    /**
     * 도메인ID getter.
     *
     * @return 도메인ID.
     */
    public String getDomainId()
    {
        return this.domainId;
    }

    /**
     * 도메인ID setter.
     *
     * @param domainId 도메인ID.
     */
    public void setDomainId(String domainId)
    {
        this.domainId = domainId;
    }

    /**
     * 삭제여부 getter.
     *
     * @return 삭제여부. (Y: 삭제, N: 미삭제)
     */
    public String getDeleteFlag()
    {
        return this.deleteFlag;
    }

    /**
     * 삭제여부 setter.
     *
     * @param deleteFlag 삭제여부. (Y: 삭제, N: 미삭제)
     */
    public void setDeleteFlag(String deleteFlag)
    {
        this.deleteFlag = deleteFlag;
    }

    /**
     * 웹표시여부 getter.
     *
     * @return 웹표시여부.
     */
    public String getWebviewFlag()
    {
        return this.webviewFlag;
    }

    /**
     * 웹표시여부 setter.
     *
     * @param webviewFlag 웹표시여부
     */
    public void setWebviewFlag(String webviewFlag)
    {
        this.webviewFlag = webviewFlag;
    }

    /**
     * 등록자ID getter.
     *
     * @return 등록자ID.
     */
    public String getCreatedBy()
    {
        return this.createdBy;
    }

    /**
     * 등록자ID setter.
     *
     * @param createdBy 등록자ID.
     */
    public void setCreatedBy(String createdBy)
    {
        this.createdBy = createdBy;
    }

    /**
     * 등록일자 getter.
     *
     * @return 등록일자.
     */
    public String getCreatedDate()
    {
        return this.createdDate;
    }

    /**
     * 등록일자 setter.
     *
     * @param createdDate 등록일자.
     */
    public void setCreatedDate(String createdDate)
    {
        this.createdDate = createdDate;
    }

    /**
     * 수정자ID getter.
     *
     * @return 수정자ID.
     */
    public String getUpdatedBy()
    {
        return this.updatedBy;
    }

    /**
     * 수정자ID setter.
     *
     * @param updatedBy 수정자ID.
     */
    public void setUpdatedBy(String updatedBy)
    {
        this.updatedBy = updatedBy;
    }

    /**
     * 수정일자 getter.
     *
     * @return 수정일자.
     */
    public String getUpdatedDate()
    {
        return this.updatedDate;
    }

    /**
     * 수정일자 setter.
     *
     * @param updatedDate 수정일자.
     */
    public void setUpdatedDate(String updatedDate)
    {
        this.updatedDate = updatedDate;
    }
    
    /**
     * 서비스타입 getter.
     *
     * @return 수정일자.
     */
    public String getServiceType()
    {
        return this.serviceType;
    }

    /**
     * 서비스타입 setter.
     *
     * @param serviceType 서비스타입.
     */
    public void setServiceType(String serviceType)
    {
        this.serviceType = serviceType;
    }

	public int getLevel() 
	{
		return level;
	}

	public void setLevel(int level) 
	{
		this.level = level;
	}

	public List getChildNode() 
	{
		return childNode;
	}

	public void setChildNode(List childNode) 
	{
		this.childNode = childNode;
	}
    
	
}
